//    Copyright 2010-2012 Antonio Torrecillas Gonzalez
//
//    This file is part of Rocinante.
//
//    Simplex is free software: you can redistribute it and/or modify
//    it under the terms of the GNU General Public License as published by
//    the Free Software Foundation, either version 3 of the License, or
//    (at your option) any later version.
//
//    Simplex is distributed in the hope that it will be useful,
//    but WITHOUT ANY WARRANTY; without even the implied warranty of
//    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
//    GNU General Public License for more details.
//
//    You should have received a copy of the GNU General Public License
//    along with Simplex.  If not, see <http://www.gnu.org/licenses/>
//

#include "zobrist.h"

// 64 casillas * 2 colors * 8 piezas = 1024 + al paso + estados + color juega
//u64 Zobrist[1500];
u64 Zobrist[1500] = {
6731611911998880807ull,
5627625245132405080ull,4209006391275701594ull,727752523458239582ull,4642370559105370927ull,1962200994034115425ull,
1158399707259483666ull,536040669977651511ull,8680515797749601657ull,5138451482638628645ull,72059893978903083ull,
7875674637957346867ull,5773703095859678017ull,2896468920377160750ull,1391654268486904633ull,6942991591037358346ull,
6656990252357477466ull,3695018012259349118ull,2962647761423449161ull,1904012708030724396ull,7206628495733309806ull,
6134466188835700767ull,3204352282455973910ull,5869121637292903173ull,8103723102765986666ull,7873269846564480371ull,
2482428185519407954ull,5116989071613773931ull,6435663714642252125ull,3333297313888366344ull,3328445041436025099ull,
4179373553266871094ull,8011125327310171434ull,6157105858954143578ull,296421141820033046ull,3561312875721801065ull,
29968427580873343ull,2889743231027259213ull,7585557504574889309ull,4283514125813030146ull,3265160833212242040ull,
5064084957903086643ull,3487501458680462338ull,7307967120058682997ull,1163438582777014096ull,1835795459693562225ull,
310271595325228065ull,6360337407413134462ull,6653328999841936385ull,3035998436701982818ull,7522242999244966932ull,
8968185345247891991ull,2755758980013522475ull,3413203425215543557ull,1371408145665628014ull,8885398910472826433ull,
2895837677310403900ull,4477721913683508579ull,8735623456117652815ull,1970362718674223111ull,5920918637616002309ull,
5646424325595142439ull,5142634888424923263ull,1601417827270070796ull,513771538522318438ull,6009510888659839242ull,
3552004573657699090ull,3829038682866217830ull,2396513325726976282ull,3196713874957293181ull,8369662040505129261ull,
8826845512961980269ull,8803251088244356194ull,4130178515988120934ull,5919181297547217737ull,1691121856897901608ull,
807876448076790382ull,1115806791301415729ull,885547126435360321ull,2613606361320155952ull,2832782012840753258ull,
4184431227787435361ull,6574138740715095141ull,8735976215938338609ull,3100240487203144749ull,373900127518075150ull,
1013999633485290250ull,4985045495830900231ull,8460640241657998207ull,3821934789487627805ull,5576607572343003249ull,
3780568797185646931ull,7584741563613078638ull,7356124319510307162ull,5435357018402135383ull,4785487189011097151ull,
3315584349544000556ull,4483628452018547562ull,4924214850253625911ull,3825937880018274089ull,746022046599830305ull,
7364530229222254461ull,3462271970779626814ull,8456365294226012278ull,5719936613430083077ull,8250315775461436955ull,
6086737283150383182ull,8800129858487607394ull,8372273570182088708ull,2904048865206993774ull,7435222283920823673ull,
4429068571080343148ull,6135369974053561121ull,3986652266789764931ull,2539568447086616092ull,8024318822883750520ull,
2329855760394754930ull,6273927780364083008ull,5057090680386618144ull,9090083771571638084ull,2985108233737566054ull,
7878618864483529497ull,5549356287763550214ull,7867844042097623091ull,2031427092196184638ull,9098790112143228454ull,
1020347311968354392ull,7375053740845188205ull,8946166546440323381ull,7086258360549850170ull,6500204313342592518ull,
4397902897317172590ull,1453302778830327346ull,1611744899168479561ull,6855611604043630194ull,8227545662105387646ull,
3474610109089797404ull,2317795024761588317ull,6158810445656437545ull,3910835327103349520ull,8728598677196205830ull,
653607110200815956ull,5768300898983158359ull,1085737290765655825ull,6867177301697500188ull,7449611319356949560ull,
1167129699414181380ull,89793207048030066ull,8308360900199283487ull,4199337582846214267ull,8089040118550972272ull,
2750603556472906254ull,749317644544599655ull,1112159697604867371ull,6374084573908119836ull,1256288118928255524ull,
3347650501939718933ull,85014536123741484ull,4776709992955722548ull,4138851067777266776ull,1908765642791600756ull,
2338036942278498348ull,1665538252116292871ull,7067635845973544482ull,5426683827614937864ull,7861905384709109825ull,
247556680608538461ull,6941487880722383452ull,2538392362010420338ull,6644574369091375184ull,7373039357527217996ull,
3117077501801619977ull,378701578031339064ull,4425646602529081402ull,4912049597266476663ull,3264349239129279571ull,
6588217685717500500ull,6127245168083938101ull,650870515301299768ull,2694630563143240739ull,3268487769271369800ull,
8465967303752381294ull,5700849100563961350ull,5412590205192599405ull,6573057868902898297ull,4142247374991745304ull,
513537991887234652ull,6231946644393784646ull,8433058649818355992ull,1733408982333616402ull,7882717722263041341ull,
3607468291616420367ull,3254469055997169230ull,2461004068091078008ull,4689159047863144497ull,8534629552831928180ull,
2974750077858375221ull,8366882278146124112ull,1154644732128086840ull,3548280228583383915ull,80264611162370069ull,
8312566467705241710ull,7002820821249062683ull,3543226014044992277ull,2194666253800642561ull,7357013799862813723ull,
4140277181404360303ull,2337086740386352989ull,5047735039071316571ull,5719108006762778728ull,6944954161144408427ull,
6085289157854461781ull,375600306895129924ull,7854279087973948984ull,1811934064100604537ull,3981765173412041738ull,
8603371938838352390ull,739854069487045438ull,6508622982426335827ull,8746305469324396817ull,749127445945794071ull,
2022696011198180955ull,2328143323127753046ull,7008262073290748692ull,2095306471180154446ull,590377629591032437ull,
6587445012097149210ull,7664382515589119076ull,8300271754751866389ull,7061703594464464442ull,5783201377325225998ull,
5272112227635117130ull,6560106764087003007ull,302638690461428774ull,2810629236338753333ull,5485481511677200689ull,
2124345770358152200ull,2666268853143812666ull,5628737956551663943ull,7428244569259145260ull,1525972856864524589ull,
4395835668438456929ull,4854987192823086353ull,4634823391352201321ull,3179321632203175208ull,7590628103667927838ull,
6356616514084801566ull,149760576292668722ull,8577388361207196490ull,5844053888380241953ull,2331754333912959783ull,
4994251320246618673ull,4487941570317324621ull,1252975277344837673ull,3615954325442994472ull,6717763649077403412ull,
5426606031123136626ull,8314829348914866273ull,8965368740622129477ull,2268757871400671797ull,2114532664898971946ull,
874056845850582067ull,2043331530612232974ull,3051576922464802419ull,4993377193803006212ull,454915587628994129ull,
2186329415424486233ull,2526878202309382501ull,5206258335013748844ull,6376051773724568881ull,370521168214766345ull,
9029788052601525078ull,6506911080512496463ull,524424561727769644ull,4127681240787191915ull,5151364164790806552ull,
748499138234811146ull,3464483388578203681ull,3835172682092011101ull,2978367213546915359ull,3472295616509784432ull,
8794775194930199345ull,3245162815131700501ull,6060569790468472392ull,2246003545605023306ull,372968922845052007ull,
1454207573431812191ull,4496654172828941646ull,5189843820728641344ull,4619978896225106303ull,150038730788195621ull,
2981461143911687780ull,2040996369304020565ull,2104588826943578144ull,3750191596402711556ull,3532246053938021497ull,
7743139430111451434ull,8954316267510049917ull,5983667010402451829ull,8793927178267355468ull,1155583964583756110ull,
1967637007870606426ull,9090798651145262134ull,4134950262583525957ull,3906093291058436404ull,4334517979596398339ull,
3335256403176529965ull,4857520562923839090ull,1225053152764056605ull,2540907609636298801ull,299316984011773445ull,
660341799497592615ull,159937221508548640ull,465620415701518363ull,8878919366597151782ull,1690598085285060381ull,
1319607558047601188ull,533143684459286388ull,322311982758646137ull,6269689309254011978ull,601268105582231920ull,
874876047018956873ull,7518263081560788504ull,6284030239096069759ull,6576468497237497353ull,2619503079346172779ull,
6088329413697548034ull,5286443197815271009ull,4691924030954560547ull,9177220261231533647ull,8451892453895439666ull,
6424730619475414871ull,1179105641178614273ull,4476712441734572577ull,7494567127014976049ull,5063295294290489619ull,
1446818786546574899ull,7006848294763176220ull,5060746878134742561ull,7374377629636245096ull,5191014513736288773ull,
8095281002270960966ull,6856744796406698871ull,7136250740894759226ull,8957721580944950342ull,8033338806508415593ull,
8225908613193223254ull,3491202551251286806ull,3248919766373461353ull,5410929945617456144ull,245232286126319441ull,
7285758776666192965ull,5508232502830439767ull,7494857618355808605ull,4617339871634223883ull,4350291926200122958ull,
4976781135077316679ull,5699657309867091569ull,7087633861997514803ull,947761591062767961ull,2340599783761140552ull,
2669332049253527583ull,395305753617907551ull,4840011751208215581ull,5777933664428956491ull,5341563124556179033ull,
4570670953714496592ull,6064693250272482366ull,8026294210776544071ull,5550796651550310195ull,6859292592345802006ull,
5005811592996146287ull,8527138349160890124ull,464217440004416801ull,7672856533070127920ull,1602273533950850120ull,
432910751946179092ull,3347062994490577017ull,2819923396353941868ull,1895853181243323669ull,7597595044589695323ull,
4713035029232958233ull,18128148022643052ull,1093893617467462755ull,177385651474926396ull,27063483443199759ull,
2379106892599596343ull,5845200883644984077ull,8237386140519905622ull,5697973893863912739ull,1036771834061542451ull,
7503414219121120265ull,7570309486360885592ull,2309804606790260514ull,2192543834891904118ull,674264538525271380ull,
8155193445995321375ull,5839812209068015874ull,5261394260614978354ull,652510857871051809ull,1087393091187639384ull,
8225301611150464547ull,5862878609174446377ull,7445319229524098891ull,2526576939665535763ull,7457216666372150320ull,
6869705998620371235ull,5077540700135695662ull,800565428519570740ull,4848980592359131204ull,4118387203652403211ull,
3321992020899626836ull,8530729268053292139ull,582760066021157902ull,1034808092034358894ull,5938027294872076154ull,
525313736372878968ull,2458757878745934423ull,3623721066671993387ull,2025064145005976951ull,7735898007647297054ull,
579637658026123614ull,2557267282198990674ull,6775395279784859198ull,7097440141375009809ull,1541702545627642965ull,
8950702087963808588ull,8951855436967070231ull,5859286978075641619ull,7068793700204770926ull,1588395179617302886ull,
2749502788700041528ull,1031402886903513622ull,3765933060149614904ull,5728350488501624383ull,8015578696416516953ull,
2916177658302511119ull,370193815787603288ull,4116592760289525248ull,1469373050626997795ull,3902942021785844485ull,
3397140233691158142ull,8226169292614216794ull,6734061517219254115ull,7572076212180578642ull,5624817174189319936ull,
7494342068115349258ull,1466260474958278261ull,6874489797052883208ull,8014559235530686505ull,1964156766480905531ull,
4697071941426093856ull,2251835124107602015ull,6781134689190554917ull,4973437856921562980ull,7523332864089159502ull,
4277410642240669194ull,3963485904874983490ull,7227525475150334524ull,7961838859668570676ull,1820680288212366700ull,
2309247342652627500ull,4056668210006750806ull,6516434273353030255ull,4619107990319688274ull,3031815650828580704ull,
9031739740833280516ull,3903253094652841598ull,4344691920184628757ull,5064427941174920230ull,4407335327661109348ull,
2412624555956374319ull,3186957676674818610ull,8446845514997254979ull,2460658676178636811ull,5481494540713215608ull,
1817048558654221419ull,3244967949293072253ull,4684072672912025695ull,611186823269588276ull,6448907372144570922ull,
6510573854864268062ull,6446667979994711341ull,8872379445599933196ull,5204611005590624355ull,3998937436662661669ull,
3174314367530240778ull,1687198936364300404ull,8586224209803762469ull,1888523398490242686ull,8014571170522409230ull,
5478694940418929672ull,7655020316230568310ull,7497127043386711162ull,7944662005646298413ull,1761578487227116903ull,
7289080618321866037ull,6075770894753358653ull,1663884810483541785ull,2454543665390639733ull,28168767172011637ull,
19749703795288877ull,7723111845646966612ull,6372073667391547165ull,7870731238178242109ull,2969847359685280378ull,
2266788751871447846ull,5277678938587407442ull,4629524535727714598ull,7309763786933358397ull,4560844967665413121ull,
1673449048779874833ull,7660678337050920491ull,4068229394289616971ull,1380480053126254186ull,3977907864139996515ull,
8029644440423444606ull,8455599892015232519ull,4477826050422172792ull,6509182697711472449ull,7308003231587513428ull,
6781426265192087123ull,1105071975724762443ull,7581812339277891609ull,3986825056363765280ull,1092212391426292829ull,
3043670828505112154ull,7025137144096512583ull,3751356653858337851ull,1810204218006246494ull,6272208593814820208ull,
1877181333503245317ull,5053690968943384067ull,2177509306082201350ull,8819293079981197143ull,5068079036437633871ull,
2105218448483832133ull,6000579612431438668ull,6778032116805140560ull,7015903763643591202ull,8301034837394487856ull,
2979194330030149667ull,5841478891358524730ull,5793144777905368578ull,3328281166090431313ull,6004261712233506932ull,
1759011931605318418ull,3675028003078422608ull,4612282496541220729ull,384552028929542735ull,6490556069595841384ull,
9022452956502576155ull,7383450873314020182ull,5421802918854263596ull,1036473419127856509ull,3396403613528914802ull,
1909058054034100046ull,5261451499123510608ull,8300811456182441278ull,958821793765470733ull,8452223485210619215ull,
3618968181525267817ull,8162516146239987319ull,6799992738277231945ull,5271210524465658935ull,7302323245331206668ull,
6485528925070112869ull,308850983584666966ull,6052876520394936362ull,5985685700581817691ull,7673025685392871966ull,
5776725589334106441ull,7364257814748677465ull,1667247104326652500ull,677597332896222029ull,7865354304646878038ull,
7241292643683818788ull,7089598707227702359ull,6431449446662537816ull,7525839643383646296ull,5140693464311875078ull,
7933400999576210248ull,6008134450189464172ull,6426966626171761923ull,6060547004778754099ull,8681009461527125118ull,
1037293590642775370ull,8658558867737375510ull,9167666585910855744ull,164417997708353350ull,5792868451163774332ull,
2964625572576778772ull,2969108449271677550ull,5193500829888225559ull,3682927988877230918ull,7807898683969460787ull,
6279469583900410416ull,446249418623905628ull,2239183094107871079ull,322091418636475442ull,1106221106923449442ull,
9113624482792696172ull,5431989003510874368ull,4264448570211326734ull,7295389882614087773ull,8446003153353118310ull,
609138556234391887ull,1097859113708313088ull,7240709705724818462ull,7667726276458648601ull,6938991714816714353ull,
2533614940353288300ull,1332621641238407773ull,7642416395532007547ull,8882513756342154546ull,958255475066294043ull,
1009403855601558844ull,6660318284960325903ull,8089425209531197284ull,798912906983912714ull,3704019490349982997ull,
7290593616178988864ull,507246870977120585ull,8449429450126027331ull,1463226098017440282ull,4545347135428700538ull,
3707414057360493087ull,8961091625472446750ull,5858717358102294315ull,7214904275204317796ull,5917201485322413418ull,
2699118765366449963ull,5421040075666107205ull,3460176605353813051ull,3200099404722884352ull,1245598417191120696ull,
4337636328165024817ull,448480069197837915ull,4204191916733975392ull,8093326172503961161ull,4284460476233822785ull,
8364974742223666558ull,7940987866551357241ull,7385701243151843607ull,7890138369710300981ull,5051483398191732603ull,
6368094818072544889ull,8172137860963846754ull,6432120476025698390ull,506378040231944740ull,3395495741881276946ull,
6592267312318125112ull,94943259599577168ull,6067764165701238074ull,2316676523674977387ull,5004360224164307283ull,
1957484766130495822ull,1382629481658646893ull,581044780738107203ull,3119501089975347ull,5432207716872047947ull,
6014622260243992914ull,5847392001676740470ull,376679760508834326ull,1599961325058813272ull,8826241910636684647ull,
8724913285746735146ull,7305121325425452886ull,5064902718674253635ull,8955697504914179453ull,8867048950140271106ull,
6217898943611102745ull,8744411629421032974ull,1390601980925446483ull,2616683108321880600ull,3628578845782930178ull,
6629979292727785056ull,8956949718865291642ull,6365621791826014265ull,8504057309464916246ull,3842514129999842404ull,
607187946590388265ull,436406251065006660ull,2021663565942516287ull,3688759334438250291ull,6804392636218356758ull,
4181353708393470252ull,7450406630966977582ull,8877240637050399060ull,531283306388727923ull,382097955854830424ull,
1588120427125292330ull,5059806718830844518ull,4780921131615584808ull,7358628935645087535ull,9096800038844187473ull,
1170765646555803655ull,3486720036963973418ull,311951357774293308ull,7451312318828647968ull,311921905575469950ull,
147521569644752195ull,452407748686265390ull,3551704407680956774ull,2611858464102572105ull,2018835708406400884ull,
3324289156910550634ull,7073870005116087297ull,6926645117640454759ull,316670418982956621ull,6342598812761275198ull,
891190460029549673ull,4851029092714695974ull,7738936929406644227ull,6790979848993978982ull,3966067115847321696ull,
1740950525048419176ull,4630605675806881326ull,8970402197043227680ull,2320295335616067438ull,3637308748510349589ull,
8296237815083835168ull,4842891548354682921ull,4430164556640558955ull,3778877623998166857ull,4202183091990898708ull,
5137610103414285130ull,315838504014277758ull,5284500734320387361ull,3171699642295929687ull,3398821786720082793ull,
3846720746613734255ull,5189850191136756792ull,3634823179411028039ull,3101634750613836054ull,6359782154255800836ull,
4929017689395191375ull,7647675633754581550ull,2606755625581745735ull,7284707663197705325ull,7146204713398251800ull,
246055701203674884ull,4855837196947505244ull,5628376174350898964ull,1181350937252549676ull,4270299895242630220ull,
4256781734948978293ull,5420711304859817541ull,1966669399940690748ull,3183255840972539719ull,3563219618449873017ull,
90448189153697624ull,2324472356982514258ull,5719111368713194551ull,1979959124395980297ull,1905155889568558422ull,
167764821686574168ull,2916098635520673322ull,6560402279178059801ull,2246304739716784403ull,5852722784424837735ull,
1015933648499210353ull,5703049541006940935ull,1821741504786226528ull,1313965892141086498ull,2485724728006836086ull,
5424987416579696993ull,8232324014555483744ull,3488619786762077565ull,14651341464223273ull,7017028350161534983ull,
7855424979946259035ull,584693289883087157ull,1307291254529010538ull,8072532375965729308ull,1594845067069519467ull,
1527704561735986197ull,1816132750778595617ull,7931720185848794697ull,5361887668731207787ull,5221154595196305987ull,
5552484475132128612ull,3246559058080904059ull,8673224999418804080ull,4404373609619130433ull,2695131725700739166ull,
5719943304338213463ull,8513530998054338658ull,1688012505980289822ull,598787959526683238ull,6565506379278539625ull,
1402354927070622744ull,9177517179686894861ull,3483582000255040569ull,6511740290522284623ull,8811934894194694745ull,
724858787721198362ull,1674238743963253844ull,8797635801677826615ull,8293513036429140064ull,8239460907278887948ull,
8536036752899191861ull,8455789790152366969ull,3458827637140165987ull,6300347275038574617ull,1250947876250745175ull,
6788449988419467301ull,5488520376997996610ull,4616892460379672943ull,952636091755805196ull,8376266499290520064ull,
2034260695240494438ull,2410567413505013540ull,4854635565328332823ull,3032438142049279555ull,7657298567858435908ull,
1974603096883019875ull,3104107555816540465ull,7667412511901633117ull,7019480209903598124ull,2757379497330957361ull,
2387286538765958494ull,3705642414153167367ull,5343557594656829801ull,5768848616298781284ull,7799761026999211634ull,
6223442931201175891ull,7423106932932354332ull,7443691625460745767ull,3985197654835414864ull,8881993632110888717ull,
798354393895869975ull,1083981177974778146ull,3826945182928029994ull,5277749379928118651ull,1517539566544383609ull,
3990199519018623045ull,7509596261545431364ull,1247817584054967877ull,315076232937346647ull,728861010274187811ull,
756447529650773609ull,5839566111041548387ull,6938401217915681371ull,6486718559152718180ull,6943554559829624661ull,
1082411195896320360ull,4572362320644891990ull,4266712536269198127ull,3905516271665485631ull,8018451806854339963ull,
869294865548405856ull,7724010981613722413ull,4778733009479356446ull,8893896850756092994ull,6723126598225064791ull,
1744064122687082527ull,7299347832598562671ull,7014958218942353259ull,6867256449651917571ull,1253494963800395874ull,
2837002877971346205ull,8508992033899679845ull,8104885376847657997ull,3613023891168392285ull,5508852624635421024ull,
178218888249812759ull,2189381084577940327ull,1531077952000907058ull,368536559643751762ull,7956819378798228753ull,
2339386085894937602ull,4137221733956010330ull,5050851957371438901ull,6990811711363835429ull,1825709470838783824ull,
3828471236128804216ull,3332224079090682663ull,6716106580729880580ull,5655768246228176154ull,221632284382475841ull,
8074677314362609482ull,9080756802093385744ull,8875512092414336303ull,6298117405614372936ull,9012266324518663722ull,
8366920963148118617ull,2037974755542400050ull,8015070717536989454ull,8012295348068175426ull,2264201604842138372ull,
6728401289787555666ull,1258883932250378319ull,6132847266396525182ull,9090840711288666999ull,5787222313898241559ull,
6922642878490822663ull,6859622612214829605ull,3200980740699613041ull,3342325563182372892ull,8800724188090366298ull,
96573551084259882ull,4757892783390289705ull,5439592015116527963ull,5933216765101748818ull,3775244849327048783ull,
4048830902751294209ull,5779045601447130225ull,9020438931448997385ull,3603842998791127608ull,4198787650819269642ull,
7009110939079568755ull,1088232134369109515ull,1532126690219488565ull,4695096333164023081ull,5073637232348782446ull,
7580218296976873032ull,8361841241939407937ull,4187842291670131052ull,6920356363782274059ull,8597966581820496429ull,
8217238020288748103ull,7877679825117782047ull,6302305325431470707ull,662395737950918748ull,651081498553318227ull,
7955386830022531954ull,4914309131009747774ull,5207015761568619590ull,3971899213682449691ull,1162326928941070632ull,
7364303750799238452ull,5925949019098795128ull,1670867631281221244ull,9019923067091579992ull,5491908867200919677ull,
1953492917472553561ull,6129741367470071558ull,5509892771002789704ull,8599712909684994053ull,4193539621886838074ull,
6880381148159099240ull,6716343907622266394ull,6784770137093526901ull,3342292667571703924ull,2600842387790389840ull,
2684762454722479110ull,7154336461513172306ull,2115011114561660003ull,4412799944357869937ull,518783002247047425ull,
7713393181231500664ull,4066257918347009840ull,7932604888378049887ull,1972902377013583677ull,5716557903989976906ull,
7439424441235881802ull,6365011482059296635ull,388539201824436331ull,5706151176320536598ull,4261073020960013605ull,
2033095127715313738ull,5422969792010811963ull,5916911006602501390ull,6440226705099225646ull,512115521270403856ull,
582090579346601986ull,7231175758034574402ull,3100856326562462751ull,8754816700350814239ull,7800290746925275732ull,
4410849276527069543ull,8720452460000385348ull,2832014631080569679ull,4325239595849439562ull,8242570724351891317ull,
536829007401739335ull,2987650368409269561ull,3688572769546814804ull,3532034014910896766ull,3243447281935547404ull,
4120071400619932980ull,4356767955427335780ull,7304044182929625423ull,5203348044750001680ull,2966294892380116753ull,
3764500486879342176ull,2177779901658591255ull,1473891106632378214ull,2902903112537284199ull,3261734509431520120ull,
6344519021165433951ull,522504732032647469ull,3118295521473162611ull,4412726627869983279ull,2398525728720621867ull,
4136110084625608202ull,5409970038349650242ull,4909041689066028854ull,8221077187936338263ull,535159029709367556ull,
1809629337138368284ull,1612701069481166705ull,5425004708555591753ull,6938945668372725088ull,3028744903662902628ull,
5278796438115807250ull,2818739248282013558ull,1886818251834004339ull,3340674896236471665ull,3113243420049636661ull,
4564401775845513087ull,7579416568669563392ull,5556356069687190882ull,4696134374541774394ull,5844589507847135540ull,
3692760822528763499ull,5648194965538755138ull,1460609944468666719ull,7869276318078481279ull,4789025218316032793ull,
8020978552639602494ull,1519812549315487785ull,1873518760978814809ull,2695447615732872477ull,4048760281868468290ull,
1954384544143013932ull,3966092906129276753ull,1323796818863346498ull,4058324270846781048ull,5339040658833491021ull,
8292846916207973451ull,8520069707705897828ull,8673486495398710575ull,8866805094147325744ull,6289100357226146350ull,
663245386250080084ull,2125550930645841743ull,6868556209521572204ull,4931479135873861180ull,3408730568126895409ull,
3042016986805319756ull,9167708603708829499ull,599300963758647660ull,1462905758680613898ull,8579482918745542221ull,
4261041162488079922ull,1658015479040919163ull,6291565253083403798ull,7153519739815482438ull,6730168098354302488ull,
9021410745057552651ull,2598918230199835226ull,5129055769587420783ull,8823206336841215577ull,7941940945344888118ull,
804009541823103859ull,4108152974487859071ull,7668077955698733667ull,5694066637379088663ull,8965616206100575098ull,
8809118043680302169ull,8287498883682365188ull,8242774194810853394ull,5277148153127700999ull,1403802575264440902ull,
8363033875696010007ull,3270519698032446069ull,2623943246863870222ull,3533980138526746142ull,6058801080909431839ull,
7513991104802850124ull,9157055174625030776ull,5509098691182019081ull,2466685416369502582ull,2678342217083718194ull,
6572762937276308829ull,3841587142845530884ull,5414015151175394589ull,1823752615349260409ull,2189431598241356139ull,
3770987801378244460ull,3747313801550890345ull,2523822530091228761ull,8080349960514644761ull,6214479664954022973ull,
8071995463827994461ull,733358077071983637ull,7313415246243375992ull,8651472168161785460ull,6862641574839614208ull,
2051243868440888104ull,366050932480946791ull,8366364308579046524ull,2828054284986579282ull,5631036918819266652ull,
3549466756100851465ull,2459049407199256901ull,7517770563195395846ull,6436806227766115155ull,7947167048331562076ull,
3829190025124735756ull,4280183706870088995ull,9179873507278542640ull,1327449525222381624ull,593688150133120322ull,
3543318312842235217ull,1299092093188269843ull,678445143154645312ull,6557292744937124702ull,2410688260700590197ull,
237660741483059247ull,6493392466488478770ull,2252715084109252685ull,5499837564010255922ull,8222017136917492536ull,
8967048715198466686ull,9182374750353580068ull,8811912095835045203ull,379738667943009052ull,3258709882308083299ull,
2674705260070921750ull,1666081255270725448ull,947826617811140910ull,9104988105660856848ull,3562128897775464314ull,
3127575376930238783ull,2469218815979296841ull,3347882468511455867ull,7570038782827968630ull,663509273450346319ull,
1233208188577734219ull,4857724978085776186ull,1448259413061345126ull,1806917872421790535ull,4121711774278774556ull,
3349285554598184453ull,3113497354247955787ull,1732875638187099907ull,3832096524440265334ull,5290730570167506439ull,
4132920311585340438ull,954796223025348359ull,5262258463504089649ull,4061149569319585562ull,1442954166111570805ull,
6003027094069665095ull,3548308745508826625ull,6779986168145210473ull,5367019124660595469ull,4628923531978552840ull,
3332696838556178543ull,7520568399704959257ull,957692633773311491ull,897478695897751072ull,2473727857462347341ull,
7154274043514334836ull,7024282162201248780ull,4640690444840431874ull,7944478752477374479ull,3988538921824508275ull,
6439867164861621600ull,1319386681851856742ull,3202723891980427552ull,4350771154842293255ull,2314616266892117092ull,
7638237090582915851ull,7867263150570033766ull,2112536810089761366ull,5223159980847670054ull,1764056809457914139ull,
7507016192836855101ull,1402347977720013903ull,6793194575573446414ull,3624667032162363513ull,5936870296094384480ull,
7944420602368570664ull,8731961019335707226ull,8096939409167044183ull,4829850068064153361ull,3782500659538496085ull,
2529355153013211470ull,8098631450340569959ull,9162367863616193545ull,595989506273907826ull,4767633180321920027ull,
8948118269957783591ull,9156759284645247035ull,8299639755564412773ull,949436473743271487ull,600771235402038354ull,
2830016800949957435ull,8379307983705220417ull,6348245127707236388ull,2171085954224428621ull,4837725819466757154ull,
8167104716885412195ull,4499181984687204151ull,3613907251188690471ull,3123622483817343029ull,7523944974960449829ull,
4205049609095613277ull,4790548325623161942ull,8360134971074747683ull,2828669816451649650ull,5860700673476267264ull,
447680651813664594ull,6141623652561738043ull,4976617258002641664ull,1226793663831024250ull,7366504999196623426ull,
7364352039433368115ull,5717955692141021963ull,3854814243207335181ull,1833261029304893756ull,4402951524165693461ull,
1603586403385619247ull,6858554883290060044ull,6870027007816983358ull,1661911864229955858ull,1595234246449893121ull,
8738229333146877771ull,604156673409697809ull,5052887312815034427ull,6779912126717643528ull,4719010547350335276ull,
8239976611805415550ull,750698471521728372ull,3758054105155519317ull,1895544977358459938ull,7873215156148468599ull,
1177136509207796038ull,532369593022940425ull,5485125167124733524ull,1605896549030840623ull,26474179509555484ull,
1297450380702342482ull,4132422636142290695ull,3547744954523202643ull,3413801198179856986ull,1587580587771040031ull,
4766880148806306582ull,2536790148270541322ull,172327587303260704ull,5580535483039902239ull,2191642510588248402ull,
5079043517416492133ull,6201816721771075896ull,4841372933711923019ull,4327974048657988943ull,4483735937982533746ull,
1376215240230503499ull,525290960533729536ull,6774100210909209445ull,94410017666442565ull,8169548615417072467ull,
6652714072075683652ull,3346007475486932517ull,6142444946090519384ull,5627871649257250652ull,1234405362995298377ull,
528679817098590812ull,6087526417891802384ull,9153139973558777647ull,966085277992366399ull,803675006748939037ull,
1832494836267356752ull,4210396213716920891ull,5046082259637074016ull,8460611203748358200ull,8601167625609159698ull,
3898999138543690533ull,813181436330525973ull,1590427375205494369ull,1524559894144882285ull,5552196390422919747ull,
2697767525370692471ull,1186729485790108225ull,2670174340141358139ull,1744600868437844854ull,4995464115076271675ull,
2100932726943981930ull,7075774203982130265ull,7210106155901462117ull,1020963677922228503ull,884761717747571523ull,
7371952867180156937ull,898585096800378185ull,3747375395727892595ull,7569436206735248735ull,5847174318938660908ull,
7931726366604744205ull,8517279057298850643ull,8162789006540147496ull,4789303375112054852ull,2819064492277964320ull,
969801379023163664ull,9011179977886226217ull,1764087341911193142ull,2335757453850266442ull,2818542190128227932ull,
6780732327410754854ull,2384712615503483708ull,2532996787722589185ull,6302837595074014727ull,5428556522052676131ull,
516873240390431292ull,4417257416609905252ull,3915655976821852514ull,4827996343631965497ull,748468593298130236ull,
6721692161355366679ull,4559085657644417884ull,1383232328752634177ull,7310023962529116754ull,6872539657622414971ull,
7358997713029909857ull,4327691276333766657ull,2168781619026212968ull,3893735940862254393ull,8950105434898307682ull,
2602809148595988347ull,8960839865129504603ull,505869249988748606ull,3692492623598403359ull,4124476070495326777ull,
6735790842395366508ull,8729978477973155909ull,178293958032244576ull,5566861783380287577ull,5145933625742266701ull,
2034848802272464228ull,8078989387673895729ull,6008930153717640830ull,6586339079055894076ull,7568342313527153248ull,
4565870825651792229ull,9159893366002840131ull,5053162263719069275ull,8815832568075330169ull,5643908984108113447ull,
8011373984374988901ull,5769436948228502539ull,4059437763131154965ull,8390815271003112269ull,8595482869865060188ull,
9171028894393269300ull,1320253357731045894ull,4790186759723960355ull,4847138836763534421ull,9041009638490073669ull,
2770035095709104173ull,8965874114575166784ull,237596991489385339ull,1013426946404601103ull,7168374163409097275ull,
8231507284676533047ull,249519133674048328ull,3335512912579360339ull,2111105551982077468ull,8176079649320626994ull,
7809256352589963823ull,3274186234292746863ull,8368276408553262092ull,4348832763323101474ull,8020175862883093008ull,
1319895682769377337ull,7720408198379433061ull,309922882500173649ull,3248281907018277975ull,6088319504708149088ull,
7878768813818713425ull,7071865679607918136ull,6433460405161191801ull,7816091153583336789ull,6159306028545279839ull,
232302851165731678ull,1805765630647344759ull,1592876068482482037ull,221252995181529672ull,5940632940814629912ull,
1314797239114213389ull,7858798222210698252ull,3769278855584241739ull,2452839434734953045ull,5836666403118318912ull,
6214183827623518808ull,9034021004813559071ull,1825169812639974269ull,2755977778851352654ull,2891635846685330789ull,
3924894124287547517ull,6931111385376819528ull,3694113973346921733ull,4543379185559798333ull,7506509344686941718ull,
2175315916952174971ull,750454307456358168ull,2973325762261745965ull,8798688291128631335ull,3972209022310681663ull,
5481814319731329870ull,3992212569795094080ull,1082611559829818450ull,2407743994702406762ull,4324990986788483187ull,
5620530170754268260ull,4910411694695405178ull,4258452545580701509ull,8371145072075301134ull,153457846881246023ull,
8724373013025350704ull,8936391084861444873ull,1954638474089286203ull,3344515679549144344ull,5692583043530432296ull,
4189496819388859396ull,7284704446595490125ull,736442204057830702ull,7662432109617365621ull,4426572429993264919ull,
5208747506022306864ull,3458814363264943730ull,2116755645679735322ull,3848150085178497384ull,9110005005155522663ull,
5860427007734975527ull,8591226571736690525ull,8367247737242600705ull,2742713511256880679ull,2600554303250969703ull,
3267749924627108620ull,7239340924605916010ull,6076490864193765938ull,4623034285407885598ull,3105305998175267859ull,
3261788200931192682ull,7654559358125479942ull,2617204044302728263ull,1398152202857762820ull,1159524193568098110ull,
6354085608403137588ull,1322655739825905440ull,7644864964224508471ull,8314805399707340088ull,3679734754073125478ull,
1832132993253117771ull,5218959948837908256ull,4714206952497184265ull,4771358283451739471ull,7301767831708185655ull,
7284406904365016378ull,2744099892596455484ull,2844896666595768118ull,2538149141015644463ull,6571065716189436983ull,
7234594372655281163ull,6200931665829452569ull,5479813164781487889ull,8173806953821250403ull,8032189157375692560ull,
6641979392478632569ull,7733085697950632468ull,5578687872866742373ull,591971801128972032ull,6590558472005498992ull,
2102986954767475806ull,576819577096390435ull,7095212396986916388ull,595134129023892760ull,3466458193886404697ull,
8653124785358115432ull,5843427377358249492ull,739462308320846448ull,8448606947055519069ull,3966671026628921636ull,
2768900387715906104ull,3696136348723907614ull,2101866298831422317ull,4277021450019295326ull,7519684427921773677ull,
6637038144978035582ull,2674065387621216363ull,8382662658019849045ull,2407004757762447995ull,1514947985133960557ull,
5933498458837377887ull,2598975396030710313ull,4843731610016506119ull,3333324569553629030ull,1754438460849224053ull,
7144809142657051986ull,2381085957413234691ull,7007348622366746920ull,1537746473677444403ull,7237691490232381280ull,
153793202020156004ull,4274208752965938542ull,5488596369041880912ull,8311235888110646538ull,};
